﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace DAL
{
   public partial class Caja
    {

       public void setAdd(dbGestionDataContext _db,
                            string descripcion,
                            int idCustodio,
                            int idObra,
                            decimal montoAsignado,
                            int idEmpleadoCre,
                            int idMoneda)
       {
           this.descripcion = descripcion;
           this.idCustodio = idCustodio;
           this.idObra = idObra;
           this.montoAsignado = montoAsignado;
           this.idMoneda=idMoneda;
           this.fechaCre = DateTime.Now;
           this.fechaMod=DateTime.Now;
           this.idEmpleadoCre = idEmpleadoCre;
           this.idEmpleadoMod = idEmpleadoMod;



           _db.Cajas.InsertOnSubmit(this);

       }



       public int getidAnterior(dbGestionDataContext _db, int idinternal)
       {
           int intAnterior = 0;

           int c = _db.Cajas.Where(p => p.idInternal < idinternal).Count();
           if (c == 0)
           {
               throw new Exception("No existe Registros");
           }
           else
           {


               intAnterior = _db.Cajas.Where(a => a.idInternal < idinternal).Max(a => a.idInternal);

           }


           return intAnterior;

       }
       public int getidSiguiente(dbGestionDataContext _db, int idinternal)
       {
           int intSiguiente = 0;

           //revisar la sentencia generada

           int c = _db.Cajas.Where(p => p.idInternal > idinternal).Count();

           if (c == 0)
           {
               throw new Exception("No existe Registros");
           }
           else
           {
               intSiguiente = _db.Cajas.Where(p => p.idInternal > idinternal).Min(a => a.idInternal);
           }

           return intSiguiente;
       }


    }
}
